/*
* Copyright (C) 2008-2009 J-P Nurmi jpnurmi@gmail.com
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* $Id: serverdialog.cpp 284 2009-01-12 20:18:50Z jpnurmi $
*/

#include "serverdialog.h"
#include <QSettings>

ServerDialog::ServerDialog(QWidget* parent, Qt::WindowFlags flags)
    : QDialog(parent, flags)
{
    ui.setupUi(this);
}

Server ServerDialog::server() const
{
    Server value;
    value.name = ui.lineEditName->text();
    value.host = ui.lineEditHost->text();
    value.port = ui.spinBoxPort->value();
    value.user = ui.lineEditUsername->text();
    value.password = ui.lineEditPassword->text();
    value.autoConnect = ui.checkBox->isChecked();
    return value;
}

void ServerDialog::setServer(const Server& server)
{
    ui.lineEditName->setText(server.name);
    ui.lineEditHost->setText(server.host);
    ui.spinBoxPort->setValue(server.port);
    ui.lineEditUsername->setText(server.user);
    ui.lineEditPassword->setText(server.password);
    ui.checkBox->setChecked(server.autoConnect);
}

Server ServerDialog::getServer(QWidget* parent, const QString& title)
{
    ServerDialog dialog(parent);
    dialog.setWindowTitle(title);
    if (dialog.exec() == QDialog::Accepted)
        return dialog.server();
    return Server();
}
